1. Technical Field
The present invention relates to a method and an arrangement for prioritized data transmission of packets from a plurality of storage queues, each interfacing one corresponding input bitstream to one common transmission medium, said method including a step of determining a respective queue priority for each respective storage queue, on the basis of which access to said common transmission medium is determined in accordance to a predetermined access criterion. The present invention also relates to a queue priority determining means, an access criterion and an access control device, such as those disclosed in the new as those disclosed in the new method and arrangement described in detail below.
2. Discussion of Related Art
Such an arrangement for performing said method is already known in the art, e.g. from the published European patent application, xe2x80x9cData transmission system and interface module and priority generating means included therein,xe2x80x9d publication number 0584405 A1, also available as Van Kersen, et al. (U.S. Pat. No. 5,402,423). Therein, a data transmission system including a plurality of interface modules (LIM1, . . . ,LIM8), each interfacing a plurality of input bitstreams (TI11, TI12) with a common transmission medium (DB), is described, whereby each interface module includes storage means (FIFO1, FIFO2) as well as a packet priority determining means (C1,C2) for determining a packet priority for each of the received packets. Within one interface module, the packet priorities are used in a priority generator (PG) for further determining an interface module priority (PR1), on the basis of which access to the transmission medium (DB) is determined by means of processing units (PR) included in each module and by means of an access bus (AB) included in the data transmission arrangement. The combination of these processing units and the access bus thus corresponds to an access control device adapted to receive from each respective queue priority determining means said respective queue priority and to determine therefrom, in accordance with a predetermined access criterion, which storage queue of a first plurality of storage queues gets access to the common transmission medium. In the special case, where a packet priority determining means for generating the packet priority, is attributed to one single storage queue, and where each interface module merely interfaces one input bitstream with the common transmission medium, the prior art arrangement corresponds to arrangement for prioritized data transmission of packets from a first plurality of storage queues included in the arrangement, each interfacing one corresponding bitstream to one common transmission medium coupled to the plurality of storage queues, the arrangement including a second plurality of queue priority determining means, each respective queue priority determining means of the second plurality being associated with a respective storage queue of the first plurality and adapted to determine a respective queue priority, the arrangement further including the above-mentioned access control device, the arrangement for realizing the method described in the Technical Field above. Indeed, in this special case, the packet priority determining means and the priority generator of the prior art document together correspond to the above-described queue priority determining means, whereby both the packet priority and the interface module priority correspond to the above-described queue priority.
The prior art method and arrangement are suited for determining a packet priority, and in the above mentioned simple configuration, a storage queue or interface module priority, on the basis of which access to the common transmission medium is determined. In the prior art arrangement, these packet priorities are determined as a function of the storage time of the packets in the storage queues and of at least one packet characterizing parameter. Examples of such a packet characterising parameter are referenced in the prior art document in column 2, lines 4-9, as being for instance the packetizing delay and/or the type of information contained in the analogous data packets filling the queue. The prior art arrangement however does not provide a solution for granting access to one of several identical storage queues, each receiving simultaneously a similar data input stream. This situation is for instance present in access multiplexers, where in the upstream direction similar bitstreams carrying identical type of data packets and pertaining to identical quality of service categories, are competing for getting access on one common data bus. The prior art method and arrangement does not provide any solution for fairly granting access to one of these apparently similar bitstreams, arriving simultaneously at the different storage queues.
An object of the present invention is thus to provide a method and an arrangement for prioritized transmission of packets from a plurality of storage queues, each interfacing one corresponding input bitstream to one common transmission medium as described in the above mentioned prior art document, but which provides a means for fairly determining access among similar input bitstreams, whereby this similarity is both related to content as well as to connection parameters associated with these bitstreams.
According to the invention, this object is achieved by the fact that the queue priorities on the basis of which access is determined, are dependent upon a respective weight associated to each corresponding bitstream.
In this way, by attributing a weight to apparently similar input bitstreams, entering at distinct storage queues, and by letting the priorities on the basis of which access is determined, to also be dependent upon these weights, a method for prioritized weighted access allowing to favor or discriminate some of these similar bitstreams with respect to the others, is realized.
Another characteristic feature of the present invention is that the dependency of the respective queue priority upon the respective weight relates to a respective amount of successive values of the respective queue priorities, the respective amount of successive values being a respective set of the respective amount of distinct values, selected within an interval and sorted out in a predetermined sequence, with Pmin being a first real number lower than a second real number Pmax, the predetermined access criterion thereby being related to the predetermined sequence.
In this way, by relating an amount of successive queue priorities with a weight, and by relating the access criterion with the sequence said successive priorities are sorted out, a bitstream with a relatively higher weight, will have a higher probability for accessing the transmission medium than a bitstream with a relatively lower weight, as will be explained more into detail in further paragraphs.
An additional characteristic feature of the present invention is that the respective queue priority is reset at respective predetermined instances related to the respective weights, to a respective value at a predetermined position of the respective set.
Resetting the respective priorities at predetermined instances, results in priority cycles, during which, for each respective storage queue, the respective amount of priorities are compared, as will be explained more into detail in further paragraphs. Since the generation of each new priority is in fact related to the transmission of at least one packet from the associated storage queue, as was already known from the prior art arrangement, the subject method thus results in transmitting, for each storage queue, an amount of packets, directly related to its weight, during such a cycle. This means that the thus obtained method is not only simple, but guarantees, during each cycle, a fair access to the transmission medium for each respective storage queue, in relation to the respective weight of the corresponding bitstream.
Yet another characteristic feature of the present invention is that the respective amount is determined as the integer most approximating the product of said respective weight and a normalization factor.
In this way, a very simple relationship between the amount of values to select from said interval and said respective weights is obtained, thus resulting in a very simple and cheap arrangement.
Still a further characteristic feature of the present invention is that the normalization factor is determined as a value not lower than the maximum between the inverse value of a predetermined resolution of the weights and the inverse value of a predetermined minimum limit value of the weights, whereby 1 added to the product of the width of said interval and the inverse value of a predetermined resolution of the priorities is not lower than the product of a predetermined maximum limit value for the respective weights and the normalization factor.
Thereby, the general relationships for any predetermined value of the minimum and maximum limits of the weights and the resolutions of the priorities and the weights allow to determine appropriate values for said normalisation factor and for the limits of the interval.
Yet a further characteristic feature of the present invention is that for respective amount being larger than 1, said respective amount of distinct values are equidistantly spaced over the total width of the interval.
In this way, by letting the respective successive priorities associated to the corresponding bitstreams to be equidistant numbers spread over the entire width of the interval [Pmin,Pmax], jitter is decreased as much as possible. Indeed, by smoothly distributing the priority values over the available range, a maximum variation among the different users is obtained.